{
GtkFileChooserDefault *impl;
GList *items;
- guint needs_sorting : 1;
} RecentLoadData;
static void
if (!impl->recent_manager)
return FALSE;
- /* first iteration: load all the items */
+ load_data->items = gtk_recent_manager_get_items (impl->recent_manager);
if (!load_data->items)
- {
- load_data->items = gtk_recent_manager_get_items (impl->recent_manager);
- if (!load_data->items)
- return FALSE;
-
- load_data->needs_sorting = TRUE;
+ return FALSE;
- return TRUE;
- }
-
- /* second iteration: MRU sorting and clamping, and populating the model */
- if (load_data->needs_sorting)
- {
- if (impl->action == GTK_FILE_CHOOSER_ACTION_OPEN)
- populate_model_with_recent_items (impl, load_data->items);
- else
- populate_model_with_folders (impl, load_data->items);
+ if (impl->action == GTK_FILE_CHOOSER_ACTION_OPEN)
+ populate_model_with_recent_items (impl, load_data->items);
+ else
+ populate_model_with_folders (impl, load_data->items);
- g_list_foreach (load_data->items, (GFunc) gtk_recent_info_unref, NULL);
- g_list_free (load_data->items);
- load_data->items = NULL;
- }
+ g_list_foreach (load_data->items, (GFunc) gtk_recent_info_unref, NULL);
+ g_list_free (load_data->items);
+ load_data->items = NULL;
return FALSE;
}
load_data = g_new (RecentLoadData, 1);
load_data->impl = impl;
load_data->items = NULL;
- load_data->needs_sorting = TRUE;
/* begin lazy loading the recent files into the model */
impl->load_recent_id = gdk_threads_add_idle_full (G_PRIORITY_HIGH_IDLE + 30,